草庐IT

MySQL GROUP BY 和 COUNT 多列

全部标签

php - SQL : How to Count occurrences in TableA, 与表连接,然后按出现次数排序?

我想要的:对于连接到Group_ID=1的每个用户,我想计算该用户参加的事件数量,并使用该信息按参加次数最多的用户DESC(结束)进行排序。将用户连接到组的表:user_r_group:IDUser_IDGroup_ID111231321412显示用户参加了哪些事件的表格:activities_attended:IDActivity_IDUser_ID111我正在寻找的结果:User_IDAttendings133221有没有办法写一个mysql_query来实现这个?确实有这种感觉。还是我需要用查询组合来解决PHP中的循环问题?我已经查看了jointables的方法,我稍微熟悉ORD

MYSQL IF SELECT COUNT() 大于零 select * from table else return nothing found

我正在寻找一种方法来进行如下查询:MySQL:示例:IFSELECTCOUNT(column_XX)WHEREcolumn_XX=value_XXFROMtable_XX大于零(0)然后SELECT一切或SELECT*FROMthattable_XXWHEREcolumn_XX=value_XX和返回所有数据...否则返回“未找到”或仅返回零(0)简单来说,如果列中的所有值都大于零,我想从表列中选择所有数据,否则仅选择值>=1并返回所有值。这里可以应用哪个魔法来在单个查询中完成它?...我真的卡住了,谢谢。 最佳答案 你可以这样尝试

mysql - 多个表上的 SQL 查询、AVG 和 COUNT

我需要一个查询,我使用的查询由于某种原因不能按我想要的方式工作这里是查询涉及的所有表。这是我想要的查询:显示带有平均评分和推荐数量的图书列表结果应该是这样的:我已经尝试过的:SELECTbook.isbn,AVG(ratings.rating)AS[AVGRatings],COUNT(recommend.isbn)AS[Numberofrecommendation]FROMbookINNERJOINrecommendONbook.isbn=recommend.isbnINNERJOINratingsONbook.isbn=ratings.isbnGROUPBYbook.isbn但它没有

mysql - SQL 在每个 SELECT 请求中获取 ROW_NUMBER 和 COUNT

我正在构建一个网格机制,我需要从数据库中检索数据(总计或找到的记录),只检索这些记录的范围,其中包含一个row_number。我使用SqlServer进行测试,但我也需要在Oracle和MySql上支持它。这就是我正在尝试的,但我无法让它工作:SELECT*FROM(SELECTROW_NUMBER()ASRN,COUNT(*)ASTOTALCN,Id,Name,PhoneFROMMyTableWHEREDeleted='F')WHERERN>100ANDRN思路是:MyTable->numberofrecords:1000SelectId,Name,PhonefromMyTablew

php - Eloquent 查询 - 多列上的 COUNT 和 SUM

我正在尝试使用从这个问题中获得的知识questionalreadyanswered在我的数据透视表中user_attitudes我有两列:重要性(用户声明他们的兴趣(0,3))态度(基本上这个是用于赞成票和反对票,值是'-1','0'和'1')我现在拥有的:我可以打印按selectRaw创建的值排序的实体列表。我需要什么:我希望打印下面描述的所有四个不同的值,不管哪个用于排序我想用AJAX创建几个排序开关,以便用户可以更改排序。对于每个我需要输出最多四个计数:总重要性得分:SUM(user_attitudes.importance)ASimportance显示有多少用户正在观察实体:C

mysql - 如果 COUNT(*) > X 则分组,否则不分组

我试图从我的数据库中返回map项目列表,仅当组数大于4时才对项目进行分组,否则我不希望对项目进行分组。我的项目旨在返回设定区域内的所有条目,我将使用分组将该区域分解为网格。如果网格中的每个单元格都有太多结果,那么我将显示一个带有组计数的组标记,而不是单个条目标记。我当前的查询用于确定是否有按COUNT(*)分组的项目SELECT*,COUNT(*)asgroupCount,floor(longitude/0.0007)ASgroupLong,floor(latitude/0.0007)ASgroupLatFROMitemsWHERElongitude>=151.1ANDlongitud

mysql - 排序多列mysql

我有一张这样的table:keyvaluerating111003012首先,我想按评级列降序对表进行排序,对于值列为1的那些行,应按键降序排序。所以结果表必须是这样的:keyvaluerating003111012我已经试过了:SELECT*FROM`table`ORDERBYCASE`value`WHEN1THEN`key`END`table`.`pair`desc 最佳答案 您没有指定如何使用value=1进行记录和value1应订购相对于对方。所以,我猜value=1记录将排在最后:SELECT*FROMtableORDER

mysql - 如何将一个表中两列的数据拆分到结果表的多列中

所以我一直在尝试让mySQL查询适用于我拥有的大型数据库。我有(比方说)两个表Table_One和Table_Two。Table_One有Type、Anima和TestID三列,Table_Two有2列Test_Name和Test_ID。带有值的示例如下:TABLE_ONETypeAnimalTestID-----------------------------------------MammalGoat1FishCod1BirdChicken1ReptileSnake1BirdCrow2MammalCow2BirdOstrich3Table_TwoTest_nameTestID---

MySQL 日期范围多列计数和 Group By Select 语句

我有一个查询我已经研究了一段时间,但我似乎无法把它记下来。此处的其他答案适用于计算特定日期范围内的金额,然后按日期分组以获得计数。但是,我需要计算两列并按日期分组。例如,这是我试图开始工作的查询:(SELECTCOUNT(*)arrived,DATE(arrived)date,'arrived'ASsourceFROMproductsWHEREarrivedBETWEEN'2016-01-01'AND'2016-01-31'GROUPBYDATE(date)ORDERBYdateASC)UNIONALL(SELECTCOUNT(*)released,DATE(released)date

mysql select count distinct row 数量

是否可以计算MySQL中具有特定值的5行或更多行的行数?它与distinct完全相同,但会忽略少于5行的值此外,如果它确实找到了超过5行的值,我只希望它算作1。如果不清楚或不够清楚,请告诉我Table:ID1001100110011001100110021002100310031003100310031004我希望此表计算具有5行或更多行的唯一ID的数量。所以我希望它返回2更新:$var=5;try{$results=$db->prepare("SELECTCOUNT(*)asTotalFROM(SELECTuser_idasYourCountFROMcard_statsGROUPBY